In [1]:
from numpy import *
from os import path, listdir
import plotly.plotly as py
from plotly.graph_objs import *
from plotly.offline import download_plotlyjs, init_notebook_mode, iplot
from myfunctions import analyze, plotS21
from plotlylayouts import *


First, let's find map out the dispersive shift due to the fixed qubit with the tunable qubit not biased.


In [2]:
def plot_disp_shift(sample, show=False):
    datapath = '\\\\128.230.72.36\labshare\Experiments\JPM\\' + sample
    files = listdir(datapath)

    data = []
    layout, trace = spectrumPlot(title="Dispersive shift of " + sample)


    for f in files:
        if f.endswith('.s2p'):
            result = analyze(path.join(datapath, f), show=show);
            data.append(Scatter(
                x = result['freq'],
                y = result['dBm'],
                name = f))
            descr = "$F_0 = " + str(round(result['f0']/1e9, 6)) + "\\text{GHz}\quad "
            descr = descr + "Q = " + str(round(result['Q'], 3)) + "\quad "
            descr = descr + "\kappa = " + str(round(result['kappa']/(2*pi*1e6), 3)) + "\\text{MHz}$"
            layout['annotations'].append(dict(
                text=descr,
                x=result['f0'],
                y=max(result['dBm']),
                xref='x',
                yref='y'))

    fig = Figure(data=data, layout=layout)
    iplot(fig)

In [3]:
plot_disp_shift("CH002_2")


Drawing...

Now let's look at the resonant frequency at various flux points to look for periodicity in resonance frequency.


In [4]:
sample = "CH002_2\\flux"
datapath = '\\\\128.230.72.36\labshare\Experiments\JPM\\' + sample
files = listdir(datapath)

volts = []
freqs = []
errors = []

for f in files:
    if f.endswith('.s2p'):
        volt = float(path.splitext(f)[0])
        volts.append(volt)
        result = analyze(path.join(datapath, f), show=False)
        freqs.append(result['f0'])
        errors.append(result['f0err'])
        
layout = dict(
        title="Flux Tuning",
        xaxis=dict(title="Volts at SRS"),
        yaxis=dict(title="Resonant Frequency (GHz)")
    )
        
data = Scatter(
    x=volts,
    y=freqs,
    mode='markers',
    error_y=dict(
        type='data',
        array=errors,
        visible=True
    )
)

fig = Figure(data=[data], layout=layout)
iplot(fig)


Drawing...

In [5]:
plot_disp_shift("CH003-Cooldown3")


Drawing...

In [9]:
sample = "CH003-Cooldown3\Flux-45dBm"
datapath = '\\\\128.230.72.36\labshare\Experiments\JPM\\' + sample
files = listdir(datapath)

volts = []
freqs = []
errors = []

for f in files:
    if f.endswith('.s2p'):
        volt = float(path.splitext(f)[0])
        volts.append(volt)
        result = analyze(path.join(datapath, f), show=False)
        freqs.append(result['f0'])
        errors.append(result['f0err'])
        
layout = dict(
        title="Flux Tuning of CH003",
        xaxis=dict(title="Volts at SRS"),
        yaxis=dict(title="Resonant Frequency (GHz)")
    )
        
data = Scatter(
    x=volts,
    y=freqs,
    mode='markers',
    error_y=dict(
        type='data',
        array=errors,
        visible=True
    )
)

fig = Figure(data=[data], layout=layout)
iplot(fig)


Drawing...

In [10]:
sample = "CH002-Cooldown3\Flux-60dBm2"
datapath = '\\\\128.230.72.36\labshare\Experiments\JPM\\' + sample
files = listdir(datapath)

volts = []
freqs = []
errors = []

for f in files:
    if f.endswith('.s2p'):
        volt = float(path.splitext(f)[0])
        volts.append(volt)
        result = analyze(path.join(datapath, f), show=False)
        freqs.append(result['f0'])
        errors.append(result['f0err'])
        
layout = dict(
        title="Flux Tuning of CH002",
        xaxis=dict(title="Volts at SRS"),
        yaxis=dict(title="Resonant Frequency (GHz)")
    )
        
data = Scatter(
    x=volts,
    y=freqs,
    mode='markers',
    error_y=dict(
        type='data',
        array=errors,
        visible=True
    )
)

fig = Figure(data=[data], layout=layout)
iplot(fig)


Drawing...

In [ ]:


In [ ]: